import { Controller, Get, Inject, Query } from '@nestjs/common';
import * as Minio from 'minio';

@Controller('minio')
export class MinioController {

    @Inject('MINIO_CLIENT')
    private minioClient: Minio.Client;


    /**
     * 第一个参数是 buckectName，第二个参数是 objectName，第三个参数是 expires。
     * bucketName 就是 chat-room
     * objectName 需要上传文件的时候拿到 file.name 作为参数传入。
     * expires 是生成的临时签名的过期时间,这里指定1个小时
     */
    @Get('presignedUrl') 
    presignedPutObject(@Query('name') name: string) {
        return this.minioClient.presignedPutObject('chat-room', name, 3600);
    }
}